{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Better speed can be achieved with apex installed from https://www.github.com/nvidia/apex.\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "from glob import glob\n",
    "from pytorch_pretrained_bert import BertTokenizer\n",
    "import torch\n",
    "from torch import nn\n",
    "%matplotlib inline\n",
    "import json\n",
    "from tqdm import tqdm\n",
    "from sklearn import metrics\n",
    "\n",
    "from model import BertPunc\n",
    "from data import load_file, preprocess_data, create_data_loader"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Model path"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['models/20190418_211742', 'models/20190419_162056']"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "glob('models/*')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "path = 'models/20190418_211742/'"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Prepare"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "data_test = load_file('data/LREC/test2011')\n",
    "data_test_asr = load_file('data/LREC/test2011asr')\n",
    "# data_test = load_file('data/NPR-podcasts/test')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'segment_size': 32,\n",
       " 'dropout': 0.3,\n",
       " 'epochs_top': 3,\n",
       " 'iterations_top': 2,\n",
       " 'learning_rate_top': 1e-05,\n",
       " 'epochs_all': 6,\n",
       " 'iterations_all': 3,\n",
       " 'batch_size_all': 256,\n",
       " 'learning_rate_all': 1e-05}"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "with open(path+'hyperparameters.json', 'r') as f:\n",
    "    hyperparameters = json.load(f)\n",
    "hyperparameters"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "tokenizer = BertTokenizer.from_pretrained('bert-base-uncased', do_lower_case=True)\n",
    "\n",
    "punctuation_enc = {\n",
    "    'O': 0,\n",
    "    'COMMA': 1,\n",
    "    'PERIOD': 2,\n",
    "    'QUESTION': 3\n",
    "}\n",
    "\n",
    "# punctuation_enc = {\n",
    "#     'O': 0,\n",
    "#     'PERIOD': 1\n",
    "# }\n",
    "\n",
    "segment_size = hyperparameters['segment_size']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "X_test, y_test = preprocess_data(data_test, tokenizer, punctuation_enc, segment_size)\n",
    "X_test_asr, y_test_asr = preprocess_data(data_test_asr, tokenizer, punctuation_enc, segment_size)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "output_size = len(punctuation_enc)\n",
    "dropout = hyperparameters['dropout']\n",
    "bert_punc = nn.DataParallel(BertPunc(segment_size, output_size, dropout).cuda())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Model progress"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>time</th>\n",
       "      <th>epoch</th>\n",
       "      <th>iteration</th>\n",
       "      <th>training loss</th>\n",
       "      <th>loss</th>\n",
       "      <th>accuracy</th>\n",
       "      <th>f1_space</th>\n",
       "      <th>f1_comma</th>\n",
       "      <th>f1_period</th>\n",
       "      <th>f1_question</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2019-04-18 21:44:48</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0.2064</td>\n",
       "      <td>0.2202</td>\n",
       "      <td>0.9190</td>\n",
       "      <td>0.9673</td>\n",
       "      <td>0.4420</td>\n",
       "      <td>0.6838</td>\n",
       "      <td>0.2902</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2019-04-18 22:11:29</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>0.2059</td>\n",
       "      <td>0.2081</td>\n",
       "      <td>0.9230</td>\n",
       "      <td>0.9697</td>\n",
       "      <td>0.5008</td>\n",
       "      <td>0.6921</td>\n",
       "      <td>0.3547</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2019-04-18 22:38:09</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>0.2241</td>\n",
       "      <td>0.2063</td>\n",
       "      <td>0.9241</td>\n",
       "      <td>0.9702</td>\n",
       "      <td>0.5048</td>\n",
       "      <td>0.6938</td>\n",
       "      <td>0.3921</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2019-04-18 23:04:47</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>0.2088</td>\n",
       "      <td>0.2035</td>\n",
       "      <td>0.9261</td>\n",
       "      <td>0.9716</td>\n",
       "      <td>0.5237</td>\n",
       "      <td>0.7039</td>\n",
       "      <td>0.3801</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2019-04-18 23:31:14</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>0.2310</td>\n",
       "      <td>0.2038</td>\n",
       "      <td>0.9253</td>\n",
       "      <td>0.9712</td>\n",
       "      <td>0.5196</td>\n",
       "      <td>0.7009</td>\n",
       "      <td>0.4100</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>2019-04-18 23:57:38</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>0.2127</td>\n",
       "      <td>0.2049</td>\n",
       "      <td>0.9256</td>\n",
       "      <td>0.9716</td>\n",
       "      <td>0.5182</td>\n",
       "      <td>0.7024</td>\n",
       "      <td>0.4047</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>2019-04-19 00:46:02</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0.1363</td>\n",
       "      <td>0.1382</td>\n",
       "      <td>0.9475</td>\n",
       "      <td>0.9815</td>\n",
       "      <td>0.6405</td>\n",
       "      <td>0.7768</td>\n",
       "      <td>0.3154</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>2019-04-19 01:33:46</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>0.1411</td>\n",
       "      <td>0.1323</td>\n",
       "      <td>0.9499</td>\n",
       "      <td>0.9825</td>\n",
       "      <td>0.6586</td>\n",
       "      <td>0.7866</td>\n",
       "      <td>0.3189</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>2019-04-19 02:21:28</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>0.1906</td>\n",
       "      <td>0.1283</td>\n",
       "      <td>0.9503</td>\n",
       "      <td>0.9830</td>\n",
       "      <td>0.6709</td>\n",
       "      <td>0.7898</td>\n",
       "      <td>0.3295</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>2019-04-19 03:09:11</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>0.1304</td>\n",
       "      <td>0.1283</td>\n",
       "      <td>0.9511</td>\n",
       "      <td>0.9832</td>\n",
       "      <td>0.6800</td>\n",
       "      <td>0.7911</td>\n",
       "      <td>0.3349</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>2019-04-19 03:57:00</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>0.0994</td>\n",
       "      <td>0.1299</td>\n",
       "      <td>0.9508</td>\n",
       "      <td>0.9832</td>\n",
       "      <td>0.6765</td>\n",
       "      <td>0.7817</td>\n",
       "      <td>0.3192</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>2019-04-19 04:44:30</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>0.1002</td>\n",
       "      <td>0.1287</td>\n",
       "      <td>0.9505</td>\n",
       "      <td>0.9830</td>\n",
       "      <td>0.6896</td>\n",
       "      <td>0.7880</td>\n",
       "      <td>0.3281</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>2019-04-19 05:32:11</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>0.1212</td>\n",
       "      <td>0.1281</td>\n",
       "      <td>0.9514</td>\n",
       "      <td>0.9833</td>\n",
       "      <td>0.6821</td>\n",
       "      <td>0.7916</td>\n",
       "      <td>0.3285</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>2019-04-19 06:19:50</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>0.1312</td>\n",
       "      <td>0.1278</td>\n",
       "      <td>0.9525</td>\n",
       "      <td>0.9834</td>\n",
       "      <td>0.6830</td>\n",
       "      <td>0.7975</td>\n",
       "      <td>0.3457</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>2019-04-19 07:07:27</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>0.1638</td>\n",
       "      <td>0.1281</td>\n",
       "      <td>0.9526</td>\n",
       "      <td>0.9837</td>\n",
       "      <td>0.6822</td>\n",
       "      <td>0.7993</td>\n",
       "      <td>0.3366</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>2019-04-19 07:55:12</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0696</td>\n",
       "      <td>0.1313</td>\n",
       "      <td>0.9511</td>\n",
       "      <td>0.9833</td>\n",
       "      <td>0.6903</td>\n",
       "      <td>0.7890</td>\n",
       "      <td>0.3418</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                   time  epoch  iteration  training loss    loss  accuracy  \\\n",
       "0   2019-04-18 21:44:48      1          1         0.2064  0.2202    0.9190   \n",
       "1   2019-04-18 22:11:29      1          2         0.2059  0.2081    0.9230   \n",
       "2   2019-04-18 22:38:09      2          1         0.2241  0.2063    0.9241   \n",
       "3   2019-04-18 23:04:47      2          2         0.2088  0.2035    0.9261   \n",
       "4   2019-04-18 23:31:14      3          1         0.2310  0.2038    0.9253   \n",
       "5   2019-04-18 23:57:38      3          2         0.2127  0.2049    0.9256   \n",
       "6   2019-04-19 00:46:02      1          1         0.1363  0.1382    0.9475   \n",
       "7   2019-04-19 01:33:46      1          2         0.1411  0.1323    0.9499   \n",
       "8   2019-04-19 02:21:28      1          3         0.1906  0.1283    0.9503   \n",
       "9   2019-04-19 03:09:11      2          1         0.1304  0.1283    0.9511   \n",
       "10  2019-04-19 03:57:00      2          2         0.0994  0.1299    0.9508   \n",
       "11  2019-04-19 04:44:30      2          3         0.1002  0.1287    0.9505   \n",
       "12  2019-04-19 05:32:11      3          1         0.1212  0.1281    0.9514   \n",
       "13  2019-04-19 06:19:50      3          2         0.1312  0.1278    0.9525   \n",
       "14  2019-04-19 07:07:27      3          3         0.1638  0.1281    0.9526   \n",
       "15  2019-04-19 07:55:12      4          1         0.0696  0.1313    0.9511   \n",
       "\n",
       "    f1_space  f1_comma  f1_period  f1_question  \n",
       "0     0.9673    0.4420     0.6838       0.2902  \n",
       "1     0.9697    0.5008     0.6921       0.3547  \n",
       "2     0.9702    0.5048     0.6938       0.3921  \n",
       "3     0.9716    0.5237     0.7039       0.3801  \n",
       "4     0.9712    0.5196     0.7009       0.4100  \n",
       "5     0.9716    0.5182     0.7024       0.4047  \n",
       "6     0.9815    0.6405     0.7768       0.3154  \n",
       "7     0.9825    0.6586     0.7866       0.3189  \n",
       "8     0.9830    0.6709     0.7898       0.3295  \n",
       "9     0.9832    0.6800     0.7911       0.3349  \n",
       "10    0.9832    0.6765     0.7817       0.3192  \n",
       "11    0.9830    0.6896     0.7880       0.3281  \n",
       "12    0.9833    0.6821     0.7916       0.3285  \n",
       "13    0.9834    0.6830     0.7975       0.3457  \n",
       "14    0.9837    0.6822     0.7993       0.3366  \n",
       "15    0.9833    0.6903     0.7890       0.3418  "
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "progress = pd.read_csv(path+'progress.csv', delimiter=';')\n",
    "progress"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "progress[['training loss', 'loss']].plot();"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAD8CAYAAACMwORRAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzs3Xl8VNX9//HXmS3JJCFkI3sIyL4vYXNFEcVWUbRurVbBSu0XbKui6Ffb2lZbrVYt1cqPWkWtX7W12uIu7huWRUBZZBFCCCQQkkD2zHLP7487mUz2ASaZSfg8H4953O3MzGcG8p4z9557R2mtEUII0btYwl2AEEKI0JNwF0KIXkjCXQgheiEJdyGE6IUk3IUQoheScBdCiF5Iwl0IIXohCXchhOiFJNyFEKIXsoXriVNSUnReXl64nl4IIXqkdevWHdJap3bWLmzhnpeXx9q1a8P19EII0SMppfYE067T3TJKqSeVUgeVUpva2a6UUkuUUjuVUl8ppSYcbbFCCCFCK5h97suBWR1sPw8Y7LvNBx4//rKEEEIcj07DXWv9MVDeQZMLgWe06Qugr1IqI1QFCiGEOHqhGC2TBewNWC7yrRNCCBEmoQh31ca6Ni8Sr5Sar5Raq5RaW1paGoKnFkII0ZZQhHsRkBOwnA3sb6uh1nqZ1jpfa52fmtrpSB4hhBDHKBThvgL4oW/UzFTgiNa6OASPK4QQ4hh1Os5dKfU8MB1IUUoVAb8C7ABa66XAG8B3gJ1ALTC3q4oVohmtwfCC9oLh8d28Ha/Thu+mW88TuM5oo22L7WhzXeC0sa525+m4TZfx7T1VypxXAXtT/fMquPm2XnezKW2v7+g989+Ho1hHO+sC/r06rbWxtk5ej/99s5jzrZYtHS9D82250yB1aOvXEUKdhrvW+spOtmtgQcgqEicWwwuV+6F8l3mr2O2bL4C68o5DWxvhrl6cEHwfaKH03YfCH+5CHDePC47sbQrw8t1NQV5RAF5XU1urAxLzIHEAZIwFixUsNt/Nat7UMa5TFnPq71EF3lRTryrw1lHbxm3QRo/4aOdpPh9KwXxjOKp51eL1djYloAfbQRuzoW8S5Lpm61usC7rGdmpr+e/R2MNv9i2vo+U2vrE0zkf1oatJuEcywwteNxhu33+Klv8R2/tKGMKQCNwl0eF/aC9UFrfRA99tBntgL9seC0kDzZ7L0PPMIE8aCEkDoE+WL4CFiDD+v62ecb3F3hPuhhc89eCuN6eeenDXgacBPHVtrK9v3r6t/axHsw+2ZVvDA16PGcxet2/ZF9TN1vuWva7W247rq6BqO/gD59sK6Zbzxyom0Qzs7Ekw5nIzuJMGmrfY1K7rpQohgJ4Y7l8+C58v8YWyL7zddWYgHjNlfnVv9dU7cNreV3SL+W2w5Vd5iw2sNrDYwWo3pw5nwLKtaX3LdlZ7623KQpsHpoL5Ctje10XV8gOgowNDHR1E8s3HpTX1wGMSj+PfQwhxvHpeuDuTIW0k2GLAFgX2GLBFmzd7dMC8b3u77QLWW2zSkxRC9Co9L9yHfce8CSGEaFfPODIghBDiqPS8nrsQEURrjdbg1RqvoTEap0brdV6j7baB8wBKKfMwjgKFahpNGLCsFFgC2tG4voP7Wyyt1/vu2mxZKYXFt85/SCXgcb1aYxgaj2FOvQGvo+m1gMcwmr0PLV+r/+Zb9hgar2Hg8QYuB6w3NF5v6/Veg6btRtP72Oy0psDRoM1OiGpzFt3iRCmb1YLdasFuVdgsFuw2hd1iwWZV/vV2q8VsZ2mcb9zmm7f47m+10D/ZSUpc1DH8jwuehLuISBU1LgrLa6l3e2nwGM2m9R6DhjbWN7gN6j3e5m3dBg0B7QEMXyAb2vwzbwxo3WIbzdq0bm9ojRHic1tEcKwWhVUprBaFzaKwWn1Ti/J/6IH5gdSW9k4vaLpn03qtweM1cBsat9f88HF7Ddxe45j//e+5aBRXTe1/bHcOkoS7iBgFh2p4d+sB3tlygLUF5UH94SgFUTYL0XYr0TYrUXZLs2l8tI0Um5VouwWH1eLvvVpUYw+4qcfauM7i+6u2BG7z93ob25hBYLGYvVyrMucbQ8diUViVGUKWgHUWpbBa8E0D25rLYPYs/YOf8H2Y0Nj7bP1B1NgGGu/T3v0D2we0893Rv943b+i2H9fa+Dr9r0c1C1uLL3CbtoHVYvG9VvO9slmb39dmsTQFtcXc3uZ637S90O5u3sbANzQer4HLF/4erzbnDQO3R+M2mn8oDE6L7/LaJNxF2BiGZmPRYVZuOcDKLQfYcbAagGHp8Sw4cxBjs/sS47A2hbfdQpQvuKMCAjtS/tDFicf8cIrMk+4k3EW3qnd7+fzbQ6zccoB3tx6ktKoBq0UxOS+JKyfnMnNEGjlJznCXKUSPJ+Euulx5jYv3vznIu1sO8PGOUmpdXmIdVqYP7cfMEWlMH5pKX6cj3GUK0atIuIsu0db+8/Q+0Vw8IYuzh6cx7aRkomyR+XVWiN5Awj1CaW0O9XJ5DFwe84BN0wE4/AezGg9KWVT7IwO6Q0f7zxeeOYizR6QxOitB9o8L0U1OyHDXWtPgMaiq91Dd4KG63oPbMMyxs/4xtkbbY22DHIPr8pqh3OALZ3PZ27TsX9fUxpx6cXnN+bZ+k6AjFkXzEQwBIzgsvrHLgdsDR1U0vi9Gi1EULUdoBI7caBwuqDHHNNe7DawWxZQBsv9ciHDrceHu9vpCud5DZb2b6gaPL6TdvnUe3zpzubrBt67eQ1VD0zq3t+sGKFsU2K0WomwWHDarb2qO7IjyjfBw2CzERdt866z+dY1to2xN7Rw2CzaL8p3wgf/EEcN3MonXaDqxxD8NnPeFdsv1jSelNJ7EYlG0OlGm+ckxrU92UQH3HZWVwJlD+5HgtHfZeyuECE6PC/e/frKLP7y1rcM2dqsiPtpOXJSNuCgb8dE2MvtGEx8db66LNtfF++ZjHTZfgFpajLHt2WNwhRAnrh4X7qcNSsV5gdUMb39IN83HRdmIssnYZyHEiS2ocFdKzQL+BFiBJ7TW97XY3h94EkgFyoGrtNZFIa4VgNHZCYzOTuiKhxZCiF6j06tCKqWswGPAecAI4Eql1IgWzR4EntFajwF+A/w+1IUKIYQIXjCX/J0M7NRa79Jau4AXgAtbtBkBvOeb/6CN7UIIIbpRMOGeBewNWC7yrQu0EbjENz8HiFdKJR9/eUIIIY5FMOHe1pHJluMIFwFnKKXWA2cA+wBPqwdSar5Saq1Sam1paelRFyuEECI4wYR7EZATsJwN7A9soLXer7W+WGs9HrjTt+5IywfSWi/TWudrrfNTU1OPo2whhBAdCSbc1wCDlVIDlFIO4ApgRWADpVSKUqrxse7AHDkjhBAiTDoNd621B1gIvA1sBf6htd6slPqNUmq2r9l0YJtSajuQBtzbRfUKIYQIgmr5W4HdJT8/X69duzYszy2EED2VUmqd1jq/s3bB7JYRQgjRw0i4CyFELyThLoQQvZCEuxBC9EIS7kII0QtJuAshRC8k4S6EEL2QhLsQQvRCEu5CCNELSbgLIUQvJOEuhBC9kIS7EEL0QhLuQgjRC0m4CyFELyThLoQQvZCEuxBC9EIS7kII0QtJuAshRC8k4S6EEL2QhLsQQvRCQYW7UmqWUmqbUmqnUur2NrbnKqU+UEqtV0p9pZT6TuhLFUIIEaxOw10pZQUeA84DRgBXKqVGtGh2F/APrfV44ArgL6EuVAghRPCC6blPBnZqrXdprV3AC8CFLdpooI9vPgHYH7oShRBCHC1bEG2ygL0By0XAlBZt7gbeUUrdCMQCZ4ekOiGEaIfWGqOqCm95OZ7yCrwV5XjKyjCqa9BuN9rlaj5ta10HbQy3C1xuUAp7djaO/v3NW15//7y1b99wvw3tCibcVRvrdIvlK4HlWus/KqWmAc8qpUZprY1mD6TUfGA+QG5u7rHUK4TopbTWGJWVeMrL8VZU4Ckrw9sY2uXl5nx5mRnk5eV4KirA7e74QW02lMOBsttRDjvKbsdid/jmG9c7sMTGNrXzrWucaq8Hd+Fe6jZsoPKNN0A3xZ81IQF7QNg7+ufhyMvDkdcfa1xcF79jHQsm3IuAnIDlbFrvdrkOmAWgtV6llIoGUoCDgY201suAZQD5+fktPyCEiFja48Goq8OorcOorUHX1WHU1fl6ex601wMeD9rjQXu8aI/bt+z1rWtj2es17+tpur+lTx8cOTnYs3NwZGdhz8xEORzhfvkd0lqjGxowamsxamravXmbLTe19R4+3BTWHk+bz2GJjcWalIQ1KRF7RgbRI0dgS0rCmmiusyUnY01MwpaUiCU+vimcLaEdEGi4XLj37sW1Zw+ugj3mdM8eatespXLFq83aWpOTA0I/oMefm4slNjakdbUlmHBfAwxWSg0A9mEeMP1+izaFwAxguVJqOBANlIayUCGOhdYab3k5rsJCPCUlZgDV1pnTulqM2lozqGtqfeHdOK1B1zYt64aG0BZmsaBsNrNn2XizWvEeOYJ2uZq1s6Wn4cjOwZ6TjSM72wz+nGzsOTlYk5JQqq0v18fGcLnwlpXhKSvHW3YIz6EyPOVleA+V+XrS5XhrqpsHdG1tu6HckoqKwhIb2+xmz8oievQobEnJZlC3Cu1ELFFRIXuNx8PicBB10klEnXRSq21GfT2uwkJce/bg9oW+q2APNZ99xpFXXmnWNu2XvyDp+y1jNLQ6DXettUcptRB4G7ACT2qtNyulfgOs1VqvAG4B/qqUuglzl821WmvpmYtuob1ePCUluPbuxVVYiLuwEFfhXlx79+Les8cMn7ZYLFicTvMWE4OKdWKJcZpftdPTfdtisDidqJgYLM5YLDExWGJ97WNizN6hzY6ym+FshrUdZbO2Dm/fDZut3R6lNgw8paVm73BvEe6iItxF5nzNx59wpLR5n0k5nTiysrDn+AK/2YdANioqCqOm1gzqsnI8ZYfw+qdlTesOleEpL8eorGyzLuV0mqGbnIQ1Ng57v7RWId10c5o97ZbrnU6U3X5c/9aRzBIdTfSQIUQPGdJqm1FT4w9+V8EenOPGdXk9KlwZnJ+fr9euXRuW5xY9j+Fy4S4q8oW3GeKuvea8u6gIHbjv1W43A69/Lo6cXBy5OdhzcrBnZmGNi0X5Al05HCHt9XYHo64O9759uIqKcO9tCn733r24iorQdXXN2quoqHa/dVgTErCmpJihnZKMLSkZW0oy1uRkbL5b43aL09kdL08EQSm1Tmud31m7YHbLCNHtalatovKNN3w98EI8xSXNDmRZnE7s/fsTNXgw8TPOwp6Ti6N/Lo6cHGzp6WYvuheyxMQQNWgQUYMGtdqmtcZbVmZ+CPqC31tVjS05qXlgJ6dgS+wb8fvyxfGRcBcRp+qDDyi68adYYmOJGjAAZ36+2QPvn2vufsjNDfm+5t5AKYUtJQVbSgox3fC1X0Q2CXcRUWo+/5x9P/s50cOGkbv8qbAPJxOip5ILh4mIUbtuHXsXLMSRl0fuE3+VYBfiOEi4i4hQ9/Um9s7/Mfb0dHKf/FtEn/knRE8g4S7Crn7bdvb+6EdYExPJfepJbCkp4S5JiB5Pwl2EVcOu3RTOm4eKjiZ3+VPY09PDXZIQvYKEuwgbV1ERhXPngtbkPvUkjuzscJckRK8ho2VEWLhLSii8di5GfT39n3maqIEDw12SEL2KhLvodp5DhyicOw9vRQW5y58ieujQcJckRK8j4S66lffwYQrnXYe7uJjcJ/5KzOjR4S5JiF5Jwl10G291NYXXz8e1ezfZSx/Hmd/p5TGEEMdIwl10C6O2lr0/voH6rVvJXrKEuFNOCXdJQvRqEu6iyxkNDRQtvJG69evJ+uODxJ91ZrhLEqLXk3AXXUq73ez7+U3UfP45Gb//PX3OOy/cJQlxQpBx7qLLaK+X/YsXU/3BB6T98hf0nXNRuEsS4oQh4S66hDYMiu/6BZVvvEm/W2/t8p8UE0I0J+EuQk5rzYF77uHIK6+QsnAhydfNC3dJQpxwJNxFSGmtOfjgg1T83/MkXTePlAX/E+6ShDghBRXuSqlZSqltSqmdSqnb29j+sFJqg++2XSl1OPSlip7g0GN/ofxvT5L4/e/Tb9Ei+bUkIcKk09EySikr8BgwEygC1iilVmittzS20VrfFND+RmB8F9QqIlzZ357k0KOPkjBnDml33SnBLkQYBTMUcjKwU2u9C0Ap9QJwIbClnfZXAr8KTXknHq01noOluAv34NqzB9eeQlyFhXgPH8YSHY1yxmCJcWKJicESE42K8S07Y7DExKCiY5rmG7fFRJvLTifKbm83dLVhoD0etMsNHjfa7TaX/VNzvtk23/b6LVs59Oij9PnOeWTc81uURfb4CRFOwYR7FrA3YLkImNJWQ6VUf2AA8P7xl9Z7acPAc/CgGdx7CnAXFvrm9+DauxddV9fU2GbDkZ2NNSkJd1UlurYOo74eo64OXVtrhu3RsFrNoI+KAq+3WYBjGMf1uuLOOovM++9HWa3H9ThCiOMXTLi31c3T7bS9AnhJa+1t84GUmg/MB8jNzQ2qwJ5KGwaekhJchYW4CvaY08I9uPcUmgFeX+9vq+x27Dk5OHJziZ02FXv//jhy++Pon4s9IwNla/+fSXs8ZtjX1qLr6jDq6jBq69D1TfNGXS26vt4337jcgLLZUHYbym4Hmw1ls5s9+47WO3xTW4vtUQ6iBg2SHrsQESKYcC8CcgKWs4H97bS9AljQ3gNprZcBywDy8/Pb+4DoFkZdHe7iEtzF+/GUHMBoqAe3G8PlMnuzbjf4pv6by412uwLm27i5XGiXC8+hQ2iXy/98yuHAnpuDI7c/saecgiOvP47cXOy5/bFnpB9zb1fZbFjj4uTHpIUQzQQT7muAwUqpAcA+zABvdUaKUmookAisCmmFx0B7vXgOHcK9fz+e4mJfiBf7bvvx7C/Ge7jzAT3K4TB7rI3Tdm6Wxn3ZDru/N2tLScXR3+x9O3JzsaWnS69W9DiGNiiqKmJbxTa2lW+jsKqQBEcCabFp9HP289/SnGnE2mPDXW5E0FpT6aqkuKaYkpqSpltt0/yN42/kuwO/26V1dBruWmuPUmoh8DZgBZ7UWm9WSv0GWKu1XuFreiXwgta6y3vk3qoq3MXFvuAuxr2/uPnygQPg8TS7jyUuDntGBrbMDGLGjMGekYk9MwN7ejq29PSmgPbdsFpltIc4odS6a9lesZ3tFdvZVr6NbRXb2FGxg1pPLQBWZSU9Np0qVxWVrspW94+1xzYL+5bh38/Zj+ToZKyWnn1MpsZd025ol9SUcKD2AHWeumb3sSkb/Zz9SI9NZ0zqGJJjkru8TtUNWdym/Px8vXbt2qO+36H/t4zShx9uvtJmw56Whi0j3QztjAwzuDMysGWYU2t8fIgqF6Jn01pTUlPi741vq9jG9ortFFYWon2H0+Lt8QxJGsKwpGEMTRzKkKQhDOo7iChrFAB1njpKa0s5UHuAg7UH/bfA5dLaUjy6eSfLqqwkxyST5kwjNSaVfs5+OKwODG3gMTwY2sCrvf6pV3sxjKb5ZtsMb/P2hrldo7EqKxZlaTZVSrVebzGnjbeW2y3Kgld7OVBzwB/iVa6qZq9JoUiJSSE9Nr3p5kxvthzKDzWl1Dqtdac/htDjwr1u40Zq165tCu7MTGwpKTJCQ/QIbsPNgZoD7Kve1/xWtY/91ftxG26cdidOu5NYWyyx9lhz2eZbZzfXxdhi/PNOm7P1OrsTh8WBy3Dx7eFv/SG+rdwM8sCed258LkOThjIkcQhDE4cyNGkoGbEZx/3N1dAG5fXl7YZ/47LH8GBTNiyW5uEaGMAtQ9dmsbUK6cZ5hWr1IeGfGgYGRrPlNttpw3+zKAtpzjTSYtNahXZ6bDr9Yvpht9qP979G0HptuAsRyQxtcLD2IPuqzbAuqi4yg7tmP/uq9nGg9gDegMFkFmUh3ZlOVnwWmbGZRFmjqPXUUuOuodZTS627ab7GXUOtu7bZ/TtiUzY02t8+xhbD4MTBZoD7Qnxw4mDZV97DBBvucj13IY6S23Cz58gedh7ZSVFVUVPPu2a/v/cdqF9MPzLjMhmfNp6suCyy47LJjMskKy6LtNg07Jbge31aa1yGyx/6Ne4a6jx1rT4AGj8YrBYrg/sOZmjSUHLic7AoOah/opBwF6IdhjbYV72PnRU72Xl4JzsO72BHxQ4KKgvwGE37khOjEsmKy2JY0jDOyj2L7LhssuKyyIzLJDMu07+fOhSUUkRZo4iyRpEYnRiyxxW9j4S7OOFprSmrL2NHhRneOw/v9N8CRz1kxmYyKHEQZ2SfwaDEQQzqO4ic+BzZrSEikoS7OKFUuarMXnhAiO+o2MHhhqbzHpKikxjcdzAXD76YQX0HMThxMCclnEScQ04UEz2HhLvotbTW7Kncw+qS1awpWcOG0g2U1JT4tzttTgYlDmJG7gwGJw5mUF+zN94dY5CF6GoS7qLX0FpTVF3EmpI1ZqAXr+Fg3UHAPKg5MW0iQ4YOYUiiOWY7FMP9hIhUEu6iRyuuLmZ1yWp/77y4phgwd61MTp/MpPRJTE6fTP8+/SXIxQlFwl30KKW1pf4wX128mqLqIgASohKYlDaJuaPmMjl9MgMTBkqYixOahLuIaGV1Zaw5sIY1xeauloLKAsA8PX5i+kS+P/z7TE6fzODEwTKGW4gAEu4iIr2+63We+PoJdh7eCZgHPyemTeSSwZcwKWMSwxKH9fgLUAnRlSTcRcTZX72fX33+K/r36c/PJvyMyemTGZE8AptF/rsKESz5axER58G1D6JQPDbjMdJj08NdjhA9kuykFBFldfFqVu5ZybzR8yTYhTgOEu4iYngMD/etuY/M2Ezmjpwb7nKE6NEk3EXEeGn7S+yo2MEt+bcQbYsOdzlC9GgS7iIiHGk4wqMbHmVy+mRm9p8Z7nKE6PEk3EVEeHT9o1S5qlg8ebGcfCRECEi4i7DbXrGdf2z/B5cNuYwhiUPCXY4QvUJQ4a6UmqWU2qaU2qmUur2dNpcppbYopTYrpf4vtGWK3kprzf2r7yfeEc/C8QvDXY4QvUan49yVUlbgMWAmUASsUUqt0FpvCWgzGLgDOEVrXaGU6tdVBYve5d3Cd1ldspo7p9xJQlRCuMsRotcIpuc+Gdiptd6ltXYBLwAXtmhzPfCY1roCQGt9MLRlit6o3lPPg2seZHDiYL435HvhLkeIXiWYcM8C9gYsF/nWBRoCDFFKfaaU+kIpNStUBYrea/nm5eyv2c8dk++QSwsIEWLB/EW1NXRBt/E4g4HpQDbwiVJqlNb6cGAjpdR8YD5Abm7uURcreo+SmhL+9vXfmNl/JpPSJ4W7HCF6nWB67kVATsByNrC/jTb/0Vq7tda7gW2YYd+M1nqZ1jpfa52fmpp6rDWLXuChtQ+h0SzKXxTuUoTolYIJ9zXAYKXUAKWUA7gCWNGizb+BMwGUUimYu2l2hbJQ0XusO7CONwveZO6ouWTGZYa7HCF6pU7DXWvtARYCbwNbgX9orTcrpX6jlJrta/Y2UKaU2gJ8ANyqtS7rqqJFz+U1vNy3+j7SY9OZN2peuMsRotcK6iiW1voN4I0W634ZMK+Bm303Idr18s6X+ab8Gx44/QFibDHhLkeIXkvOUBXd5kjDEf785Z+ZmDaRc/PODXc5QvRqEu6i2yzduJQjriPcPvl2uX6MEF1Mwl10i28Pf8vz3zzPJYMvYVjSsHCXI0SvJ+Euulzj9WOcdic3jr8x3OUIcUKQcBdd7oO9H7CqeBULxi0gMTox3OUIcUKQcBddqsHbwANrHuCkhJO4bOhl4S5HiBOGXNBDdKlntzxLUXURy2Yuw26xh7sccYzcbjdFRUXU19eHu5QTRnR0NNnZ2djtx/Z3I+EuusyBmgMs+2oZZ+WcxbTMaeEuRxyHoqIi4uPjycvLk5FO3UBrTVlZGUVFRQwYMOCYHkN2y4gu88iXj+A1vCyaJNeP6enq6+tJTk6WYO8mSimSk5OP65uShLvoEhsObuC1Xa9xzchryInP6fwOIuJJsHev432/JdxFyBna4L7V99Evph8/Gv2jcJcjxAlJwl2E3H92/ofNZZu5Kf8mnHZnuMsR4oQk4S5CqspVxSNfPsK41HF8d8B3w12OEEfF4/GEu4SQkXAXIfX/Nv4/KuoruH2KXD9GhNZFF13ExIkTGTlyJMuWLQPgrbfeYsKECYwdO5YZM2YAUF1dzdy5cxk9ejRjxozhX//6FwBxcXH+x3rppZe49tprAbj22mu5+eabOfPMM1m8eDGrV6/m5JNPZvz48Zx88sls27YNAK/Xy6JFi/yP++c//5n33nuPOXPm+B935cqVXHzxxd3xdnRKhkKKkNl9ZDfPbX2OOYPnMDJ5ZLjLEV3k169uZsv+ypA+5ojMPvzqgo7/zzz55JMkJSVRV1fHpEmTuPDCC7n++uv5+OOPGTBgAOXl5QD89re/JSEhga+//hqAioqKTp9/+/btvPvuu1itViorK/n444+x2Wy8++67/O///i//+te/WLZsGbt372b9+vXYbDbKy8tJTExkwYIFlJaWkpqaylNPPcXcuXOP/w0JAQn3COf2utlYupF91fuIs8cR5/Dd7OYt3hGPw+oId5kA/GHNH4i2RfPT8T8NdymiF1qyZAmvvPIKAHv37mXZsmWcfvrp/nHgSUlJALz77ru88MIL/vslJnZ+yYtLL70Uq9UKwJEjR7jmmmvYsWMHSincbrf/cW+44QZsNluz57v66qv5+9//zty5c1m1ahXPPPNMiF7x8ZFwjzBaa7ZXbOeL4i/4ovgL1h1YR52nrsP7OCyOpsB3xBFvjyfWHmvOO+L9HwSNHwyN2+0WOzaLrflNNc0HbreojvfgfVz0MZ/u+5RF+YtIjkkO5VsiIkxnPeyu8OGHH/Luu++yatUqnE4n06dPZ+zYsf5dJoG01m3uEgxc13L8eGxsrH/+F7/4BWeeeSavvPIKBQUFTJ8+vcPHnTt3LhdccAHR0dFceuml/vAPt8io4gRXXF3MF8VfsKp4Ff8t/i/l9ebXy7w+eVx40oVMzZzKoL6DqPNrGHxDAAAgAElEQVTUUeWqotpVTbXbd3NVU+WuosZVQ5W7aVt5dbk571vW6OOq0aIszYK/5QdAWV0ZeX3y+P6w74fiLRGimSNHjpCYmIjT6eSbb77hiy++oKGhgY8++ojdu3f7d8skJSVxzjnn8Oijj/LII48A5m6ZxMRE0tLS2Lp1K0OHDuWVV14hPj6+3efKysoCYPny5f7155xzDkuXLmX69On+3TJJSUlkZmaSmZnJPffcw8qVK7v8vQiWhHsYHGk4wpqSNf7e+Z7KPQAkRyczLXMaUzOmMjVjKumx6SF5Pq01tZ5aqlxV1Lhr/FOP4cFjeHAbbtyG21zWHv/6wJvbcLfa5r+PYY4wmDdqHnarXD9GhN6sWbNYunQpY8aMYejQoUydOpXU1FSWLVvGxRdfjGEY9OvXj5UrV3LXXXexYMECRo0ahdVq5Ve/+hUXX3wx9913H+effz45OTmMGjWK6urqNp/rtttu45prruGhhx7irLPO8q//0Y9+xPbt2xkzZgx2u53rr7+ehQsXAvCDH/yA0tJSRowY0S3vRzCU+fOnnTRSahbwJ8AKPKG1vq/F9muBB4B9vlWPaq2f6Ogx8/Pz9dq1a4+l5h6nwdvAhoMbzDDf/wVbyrdgaAOnzcmk9ElMzZjKlIwpDOo7SEaYiIi0detWhg8fHu4yItbChQsZP3481113XUgft633XSm1Tmud39l9O+25K6WswGPATKAIWKOUWqG13tKi6Yta64XBl917Gdrgm/Jv/GH+5cEvafA2YFM2xqSO4YYxNzA1cyqjUkbJlRKF6OEmTpxIbGwsf/zjH8NdSjPB7JaZDOzUWu8CUEq9AFwItAz3XsHldfl3WzTu0w7cv13jrmm2j7vGXeNvE7jLw6u9AAzqO4hLh1zKtMxpTEybSKw9tpMKhBA9ybp168JdQpuCCfcsYG/AchEwpY12lyilTge2Azdprfe20SbibDi4gXv/ey8Haw9S5arCbbg7vU/g6JRYeyzxjniy4rKId/hGqdjjGJAwgKkZU0l1pnbDqxBCiOaCCfe2dgK33FH/KvC81rpBKXUD8DRwVss7KaXmA/MBcnNzj7LU0PvPzv/w61W/pp+zHzP7z/QPF2wMaP/wwYD5WHtsxIwrF0KI9gQT7kVA4DVbs4H9gQ201mUBi38F7m/rgbTWy4BlYB5QPapKQ8hreHl43cM8veVppmRM4Y9n/JGEqIRwlSOEECEXTLivAQYrpQZgjoa5Amg2mFkplaG1LvYtzga2hrTKEKpyVbH448V8su8Trhh6BbdNvk0Oagohep1OLxymtfYAC4G3MUP7H1rrzUqp3yilZvua/VQptVkptRH4KXBtVxV8PAorC7nqjatYtX8Vv5j6C+6ceqcEuxA9xJIlSxg+fDiXXHIJ06ZNIyoqigcffDDcZUWsoE5i0lq/AbzRYt0vA+bvAO4IbWmh9d/i/3LLR7cAsOycZUxKnxTmioQQR+Mvf/kLb775JrGxsezZs4d///vf4S4pop0Ql/x94ZsX+PHKH5Mak8rz331egl2IHuaGG25g165dzJ49m+eee45JkyZht3f+rbumpobvfve7jB07llGjRvHiiy8CkJeXx+LFi5k8eTKTJ09m586dALz66qtMmTKF8ePHc/bZZ3PgwAGg/csIv/POO0ybNo0JEyZw6aWXtnvWazj06ssPuA0396++nxe3vcgZ2Wdw32n3EeeI6/yOQoj2vXk7lHwd2sdMHw3n3dfu5qVLl/LWW2/xwQcfkJKSEvTDvvXWW2RmZvL6668D5nVjGvXp04fVq1fzzDPP8POf/5zXXnuNU089lS+++AKlFE888QR/+MMf+OMf/9jmZYQPHTrEPffcw7vvvktsbCz3338/Dz30EL/85S/brKW79dpwP1x/mFs+uoXVJauZO2ouPxv/M6wWa7jLEkJ0o9GjR7No0SIWL17M+eefz2mnnebfduWVV/qnN910EwBFRUVcfvnlFBcX43K5/JcTbusywq+99hpbtmzhlFNOAcDlcjFt2rTuemmd6pXh/u3hb1n43kIO1B7gd6f+jgtOuiDcJQnRe3TQw440Q4YMYd26dbzxxhvccccdnHPOOf6edeB1nBrnb7zxRm6++WZmz57Nhx9+yN133w20fblfrTUzZ87k+eef754Xc5R63T73j4s+5gdv/IA6Tx1PzXpKgl2IE9j+/ftxOp1cddVVLFq0iC+//NK/rXH/+4svvujvcQde7vfpp5/2t228jHCjiooKpk6dymeffebfX19bW8v27du7/DUFq9f03LXWLN+8nIfXPcywpGEsOWtJyC6ZK4SIHCUlJeTn51NZWYnFYuGRRx5hy5Yt9OnTp1Xbr7/+mltvvRWLxYLdbufxxx/3b2toaGDKlCkYhuHvfd99991ceumlZGVlMXXqVHbv3g3Q7mWEly9fzpVXXklDQwMA99xzD0OGDOmGd6FzQV3ytyuE8pK/Dd4GfrPqN6z4dgXn5p3Lb0/5LTG2mJA8thCi913yNy8vj7Vr1x7Vwdlw6NJL/ka6Q3WH+NkHP+Or0q9YMG4BPx7zY7kmuhDihNejw31r2VZufP9GKl2VPDT9IWb2nxnukoQQYVBWVsaMGTNarX/vvfdITm79m74FBQXdUFV49dhwf7vgbe769C76RvflmfOeYVjSsHCXJIQIk+TkZDZs2BDuMiJKjwt3Qxss3biUxzc+zrjUcTx85sOkxET2fjMhhOhuPW4oZGOwXzToIv527t8k2IUQog09rud+2dDLSI5O5rKhl8mBUyGEaEePC/eUmBQuH3Z5uMsQQoiI1uN2ywghTkxyPfej0+N67kKIE5Ncz/3oSM9dCBHxjvV67gDPPPMMY8aMYezYsVx99dUA7NmzhxkzZjBmzBhmzJhBYWEhANdeey0/+clPOPPMMxk4cCAfffQR8+bNY/jw4Vx77bX+x4yLi2Px4sVMnDiRs88+m9WrVzN9+nQGDhzIihUrAHMs/WmnncaECROYMGECn3/+eWjflE5Iz10IcVTuX30/35R/E9LHHJY0jMWTF7e7/Viv575582buvfdePvvsM1JSUigvLwdg4cKF/PCHP+Saa67hySef5Kc//an/m0BFRQXvv/8+K1as4IILLuCzzz7jiSeeYNKkSWzYsIFx48ZRU1PD9OnTuf/++5kzZw533XUXK1euZMuWLVxzzTXMnj2bfv36sXLlSqKjo9mxYwdXXnklobrkSjAk3IUQvdb777/P9773Pf8HQlJSEgCrVq3i5ZdfBuDqq6/mtttu89/nggsuQCnF6NGjSUtLY/To0QCMHDmSgoICxo0bh8PhYNasWYB5zfioqCjsdjujR4/2n/3qdrtZuHAhGzZswGq1dvsVIyXchRBHpaMedqRp6zrsbQlsExUVBYDFYvHPNy57PB4A7Ha7/z6B7QLbPPzww6SlpbFx40YMwyA6Ojo0LypIQYW7UmoW8CfACjyhtW7zav1Kqe8B/wQmaa277/uHCIrWmpJdlXz9YREFXx3C5rAQHWsnOs5uThtvcW3Mx9mJirVhtcphGtFzzJgxgzlz5nDTTTeRnJxMeXk5SUlJnHzyybzwwgtcffXVPPfcc5x66qkhf+4jR46QnZ2NxWLh6aefxuv1hvw5OtJpuCulrMBjwEygCFijlFqhtd7Sol088FPgv11RqDh2bpeXHWsO8PWHRRzaW40j2sqg/H4oi6K+2k19tZsjpXUcKKikvsaN4Wn/MtCOaGuz8I/yBb8z3s6waRnEJXZv70SceI7meu4jR47kzjvv5IwzzsBqtTJ+/HiWL1/OkiVLmDdvHg888ACpqak89dRTIa/zf/7nf7jkkkv45z//yZlnnklsbGzIn6MjnV7PXSk1Dbhba32ub/kOAK3171u0ewR4F1gELOqs5x7K67mLth0prWXTR/vY+nkxDbUekjJjGT09myGT03BEt/25rrXG3eClvsZNQ43HDP+agFt1W/MeXHUeEtOdfO/2/HYfW/Rcve167j1FV1/PPQvYG7BcBExp8WTjgRyt9WtKqUVBPKboItrQFG4p5+sPi9izuQylFAPHpTLmzCwyBvXtdP+jUgpHtM0M6NZXSm1X0bYKVvxpA+8t38qs+aNQFrk0hBDhFEy4t/VX6u/uK6UswMPAtZ0+kFLzgfkAubm5wVUoglJf4+abVcV8/dE+KkvrcPZxkP+dPEaemkVcYlTnD3CcsocmcvLFJ/HZSztZ9/Ye8s/L6/LnFKLR0V7P/UQQTLgXATkBy9nA/oDleGAU8KGvV5gOrFBKzW65a0ZrvQxYBuZumeOoO2IVfVPO2jcLcDcYJGXGkpQR65/GJUaF/GJnpXur2PRhEdtXH8DjNsg4KYGpswcycHwqVlv3HvwcOyOHg3uq+O+KXaTmxNN/1In5RyW6n1zPvbVgwn0NMFgpNQDYB1wBfL9xo9b6COA/q0Ap9SFB7HPvbQ7sruSL/3xL0TcVxCVGkdDPyZ5NZXzzebG/jSPaGhD4cf7gdyY4jir0vR6Db9cfZNOH+yj+9gg2u4Uhk9MYNT2b1Jz4rnh5QVFKcebVwygvrmHlk5v53u359O3nDFs9QpzIOg13rbVHKbUQeBtzKOSTWuvNSqnfAGu11iu6ushIVra/mtUrdrNrQynRcXZOvXQwI0/PxGa3AlBf7aa8uJry/TWU76+hbH8NuzYeYstnTaEf5bQ19fADwj8m3t4s9KsrGtj8yT42f7qfukoXfVJjOOV7gxg2LYPo2OBOxe5qdoeV79wwmn/8fg1vLv2aS26bKAdYhQiDTkfLdJWePlqm8lAdq1/dzbbVJTiirIybmcvYGTlBB1ltpYvyYjPwzan5AdBQ6/G3iY61+8O+rtrFrg2H0FrTf1Qyo8/IJndEUsQeuNy7pZxX/7yBgeP7ce71I+Xa+z2cjJYJj64eLSMC1BxpYN0bBWz+dD/Kohh/di4Tzu1PdNzR9ZydfRw4+zjIHproX6e1NkN/f2Do17B9dQnKohg7I4dRp2eRkBoT6pcVcjkjkpg65yRWvfwt69+JZ8K5/cNdkhAnFAn3INXXuFn/TiFfvb8Xw6sZfmom+eflhXQkilKK2IQoYhOiyBme5F+vtQZNxPbS2zN+Zi6le6r44t/fkpITR+4IOcAqjt2SJUt4/PHHGTFiBPv37+fLL7/k3nvvZdGirh19vXTpUpxOJz/84Q+Dal9QUMD555/Ppk2burSuzki4d8JV7+Gr94tYv7IQV72HIZPSmHT+gG49UKiUantAaoRTSnHWD4dTUVLDO09s5tI7JvWIbx0iMoXjeu4ej4cbbrihy5+nK0i4t8PrNtj0yT7WvVlAXZWbvDEpTJk9kJTsuHCX1qPYo6ycd8No/vn7tf4DrPYoa7jLEseh5He/o2FraC/5GzV8GOn/+7/tbg+8nvu8efO46aabeP311zt93IKCAmbNmsWUKVNYv349Q4YM4ZlnnsHpdLJu3TpuvvlmqqurSUlJYfny5WRkZDB9+nROPvlkPvvsM2bPnk1VVRVxcXEsWrSIDRs2cMMNN1BbW8tJJ53Ek08+SWJiIuvWrWPevHk4nc4uuU7NsZCrQLVgeA22fr6fv/9qFZ/+YwdJGbFccttEvvs/YyTYj1FCqpNzrhtJ2f5qPnh2K+E6iC96rqVLl5KZmckHH3zATTfddFT33bZtG/Pnz+err76iT58+/OUvf8HtdnPjjTfy0ksv+YP5zjvv9N/n8OHDfPTRR9xyyy3NHuuHP/wh999/P1999RWjR4/m17/+NQBz585lyZIlrFq16vhfbIhIz91Ha823X5ay+tVdVJTU0q9/PGddNZzs4Yky0iMEckcmM/XCgXzx712k9u/D+JlyhnJP1VEPOxLl5ORwyimnAHDVVVexZMkSZs2axaZNm5g5cyYAXq+XjIwM/30uv/zyVo9z5MgRDh8+zBlnnAHANddcw6WXXtpq/dVXX82bb77Z1S+rUxLumMP2Vv37W0oLq0hMdzLrx6MYOC5VQj3EJpzbn9LCKla9vJOU7LhmB42F6Cot/46VUmitGTlyZLs97aO5gmOw14zvbif0bhmtNatf3cWKJRuor3Yz45rhXPHLKZw0vl9E/mP1dI0HWBMzYnnnic1UHqoLd0niBFBYWOgP8eeff55TTz2VoUOHUlpa6l/vdrvZvHlzh4+TkJBAYmIin3zyCQDPPvssZ5xxBn379iUhIYFPP/0UgOeee64LX03wTthwNwzNR/+3jTWvFzDs5Ax+8OupDJuWgaWHDTfsaRzRNs778WgMQ/Pm//sat6t7f8BA9HwlJSVkZ2fz0EMPcc8995CdnU1lZWW77YcPH87TTz/NmDFjKC8v5yc/+QkOh4OXXnqJxYsXM3bsWMaNGxfUD1g//fTT3HrrrYwZM4YNGzbwy1/+EoCnnnqKBQsWMG3aNGJiImNE2Al5hqrH7WXlk1vYtb6UCbP6M/XCgdJT72YFXx/i9b98xZBJaZw9d4S8/xEu0s9QNbwG7gYv7gYvhqGx2ixYrRYK9+3h4ksu4uuvv+6R/8fkDNWj0FDr5o3Hv2b/jsOceulgxs7I6fxOIuTyRqcw5YIB/HfFbvr17yP/DuKoeD1NYe6u9+JxN30DtFgUhmF2WitL6/C4DUr3VmO1KjP0bRYstqZ5q02hLCqk4a+1xvBqtKExDN/U2zQf5bRhj+ra+D2hwr3mcAOv/nkjFSU1nHPdSAZPSgt3SSe0ibPyOLinis/+ZR5gzQq4FIMQgbweA3e9B5cvzL0eAzCP49ijrNTXV3PBnPOaBbTW8OZrb/Hl2g0YbgOv18Dr0bhr3Wij+R4LpRRWm8LiD3yLf9liVehWAW3u2tUBgW0YTYHe4R4RBVabBXsX/8zCCRPuhw/UsuJPG6ivcXP+grHkjJCRGuGmLIqzrx3BS/ev5e0nNnHpHZOIT+rdv8Hq9Rr+361t+bOFddVuYuLspA9MoF//PifsyV5aa1+Ymz1zV70Xw+sLc4sZ5jFxduzRVmwOK0op+uJk48aNQT+HYZjPYXgMvB4z9L2+eXe9N+hzMZRFYbEoLFbzZrNbzHVWc33j9sZ15jeE1iN4usIJEe4HCip57dGNKAUX3Tyefv1b/5CuCA9HjM08g/U+8wzWixdNwOboGaHmdRvUVbv8IV1X7abBF9LNgjtg6qpv/wCyzW7B424KseSsWNIHJJA+sA9pAxJI6BfTI/cbd0ZrjcfVuJvFg7ve69+tYrEq7FE27FEOM8ztlpC8BxaLwuKwQhv/17Q2e9+NgW94tRnQ/sDGH9iR/O/R68O9cHMZby7bhDPezgU3jqNvmvx4RKRJTI9l5twRvPH413z0f9s465rhEfNHY3gNqsrrOXygjsMHajl8sNY/rS5vaPd+9mizdxkdayc6zk7fNCfRvuWYODtRvvX+NrF2bA4r9dVuSnYf4cDuSkp2HWHb6hI2fbwPMC8BnTawD+kDEkgb2Ie0vD5deq18r9t87VVl9bgbPFRX1Ju7HVp1anVbk1abm6/S/vUel+HvKVtsFhwxNuzRVuxRVqy20IT50VDKF+RWevS3p14d7tv+W8L7T28lMTOWC24cS2xC1/+WqDg2A8amMun8Aax5bTep/fsw5szsbnvuxkstHzlY2yrEj5TWYXib0skRY6NvmpPMwX1JSHUSm+DwB3jg9Fh/4jA6zk7e6BTyRps/bmYYmoriGkp2HaFkdyUHdh1hz9dlZmMFyZmxpA1MIH1AH9IHJtC3nzPoq4cGhndlWZ1vai5XldVRc8TlbzvpqkRqK11YrBaaZW2Lp1KNK9opoa2cjo61YY+2+cNchEavDfcN7xby2Us7yRrSl/N+MoaomF77UnuNSd/Jo7Swis/+uYOU7FgyB4f2AKurzmOGdmCI+4LcHbC7xGqzkNAvhsT0WAaMTSGhn5O+aU769nO2+nWsrmaxKJKz4kjOimPkaVmAefnpgwVmz/7A7kp2rj3Ilk/MnzWOctpIG2Duxkkf2If4pGiqyxs6DW8wdwXFJ0URnxxNzshk+iRHE58cTZ/kaCpcxaTmxkfMNyrRuV6XeFprVr3yLevfKeSkCamcPXeE/yfvRGRTFsXZc0fw0n1reWvZJi6+1byCZONwN3eDB5fvIFurdf6Dbx7/dld90z5cd4O3WQ8cBfFJ0fRNczJsYAZ902L8AR6XFB3RJ7NFx9rJHZlM7kjz+vja0FQcqPWHfcmuIxRu2d1qd0hH4R2fHENsggOLte2e85GtJWEP9nBdz70zv/vd7/jfgOvtnHzyyUGdENXVetVJTF6vwYfPfsM3X5Qw6vQsTrtiSET/kYq2lRfX8NJ9a3E3BHf2qjmszIo92orDt6+28Wu+I2A+ymmjbz8nCWkxJKTG9OoPfVedhwN7Kqk93EB8EOHdmUg4iWnYsGGtrueemJgY9nCPi4ujurq6Sx67y09iUkrNAv6E+QPZT2it72ux/QZgAeAFqoH5WustwZUfGu4GL2//dRN7NpUx+YIB5H8nL+w9DXFskjJimXPLBPZuLTcDOtpqjpiItvoPtDl8gW2PtmI9xsDqzRwxNnKGdc1w30/+sZ1De0MbZik5cZx22ZB2tx/r9dwB7r33Xp555hlycnJITU1l4sSJLFq0iOnTp/Pggw+Sn5/PoUOHyM/Pp6CgAK/Xy+23386HH35IQ0MDCxYs4Mc//jHFxcVcfvnlVFZW4vF4ePzxx3n99depq6tj3LhxjBw5kueee84f9lprbrvtNt58802UUtx1111cfvnlfPjhh9x9992kpKSwadMmJk6cyN///veQ51Wn4a6UsgKPATOBImCNUmpFi/D+P631Ul/72cBDwKyQVtqB+mo3rz22kYMFlUz/wVD/vknRc6XmxpOaGx/uMkSEWLp0KW+99RYffPABKSkpQd9v3bp1vPDCC6xfvx6Px8OECROYOHFih/f529/+RkJCAmvWrKGhoYFTTjmFc845h5dffplzzz2XO++8E6/XS21tLaeddhqPPvooGzZsaPU4L7/8Mhs2bGDjxo0cOnSISZMmcfrppwOwfv16Nm/eTGZmJqeccgqfffZZyH/kI5ie+2Rgp9Z6F4BS6gXgQsAf7lrrwKv2xNLm4KeuUVVez6tLNlB5qJ5Z80czcHxqdz21ECekjnrYkeaTTz5hzpw5OJ3mEOjZs2d3ep933nmHr776ipdeegkwr+O+Y8cOJk2axLx583C73Vx00UWMGzeuw8f59NNPufLKK7FaraSlpXHGGWewZs0a+vTpw+TJk8nONkeEjRs3joKCgrCEexawN2C5CJjSspFSagFwM+AAzgpJdZ0o21/Nq0s24m7wMvtnY0M+ukII0fO1t7vDZrNhGOZJY/X19f71Wmv+/Oc/c+6557a6z8cff8zrr7/O1Vdfza233trhj2Z3dDwzKqppWLbVasXj8XT6Oo5WMDsr23pnWp+noPVjWuuTgMXAXW0+kFLzlVJrlVJrS0tLj67SFop3HuaVB79Ea82cWyZIsAshWjn99NN55ZVXqKuro6qqildffdW/LS8vj3Xr1gH4e+kA5557Lo8//jhutxuA7du3U1NTw549e+jXrx/XX3891113HV9++SUAdrvd37blc7/44ot4vV5KS0v5+OOPmTx5cle+3GaC6bkXAYGX7MsG9nfQ/gXg8bY2aK2XAcvAHC0TZI2t7N5YyttPbCY+KZoLbhxLn5TIuH6yEKLrlZSUkJ+fT2VlJRaLhUceeYQtW7bQp0/ry4pMmDCByy+/nHHjxtG/f39OO+00/7ZFixZx2WWX8eyzz3LWWU07G370ox9RUFDAhAkT0FqTmprKv//9bz788EMeeOAB7HY7cXFxPPPMMwDMnz+fMWPGMGHChGY/1DFnzhxWrVrF2LFjUUrxhz/8gfT0dL75JrQ/Lt6eTodCKqVswHZgBrAPWAN8X2u9OaDNYK31Dt/8BcCvOhuqc6xDIb/5opj3n95Kam485y8cS0y846gfQwhxdCJhKGQo3H333cTFxYV9+GSwunQopNbao5RaCLyNORTySa31ZqXUb4C1WusVwEKl1NmAG6gArjmG1xGUhJQY8sakcPbcEV16XQ0hhOjJetVJTEKIrhHpPfeysjJmzJjRav17771HcnJyGCoKDfklJiHECS05ObnNseYnMjm1TwgRlHB9yz9RHe/7LeEuhOhUdHQ0ZWVlEvDdRGtNWVkZ0dHH/stksltGCNGp7OxsioqKON7zU0TwoqOj/WexHgsJdyFEp+x2OwMGDAh3GeIoyG4ZIYTohSTchRCiF5JwF0KIXihsJzEppUqBPcd49xTgUAjL6QqRXmOk1wdSYyhEen0Q+TVGWn39tdadXts8bOF+PJRSa4M5QyucIr3GSK8PpMZQiPT6IPJrjPT62iO7ZYQQoheScBdCiF6op4b7snAXEIRIrzHS6wOpMRQivT6I/Bojvb429ch97kIIITrWU3vuQgghOtDjwl0pNUsptU0ptVMpdXu46wmklMpRSn2glNqqlNqslPpZuGtqj1LKqpRar5R6Ldy1tEUp1Vcp9ZJS6hvf+zkt3DUFUkrd5Ps33qSUel4pdexXeApdTU8qpQ4qpTYFrEtSSq1USu3wTcP6Y8Pt1PiA79/5K6XUK0qpvpFUX8C2RUoprZRKCUdtR6tHhbtSygo8BpwHjACuVEqNCG9VzXiAW7TWw4GpwIIIqy/Qz4Ct4S6iA38C3tJaDwPGEkG1KqWygJ8C+VrrUZi/UHZFeKsCYDkwq8W624H3tNaDgfd8y+G0nNY1rgRGaa3HYP6k5x3dXVSA5bSuD6VUDjATKOzugo5Vjwp3YDKwU2u9S2vtwvwx7gvDXJOf1rpYa/2lb74KM5CywltVa0qpbOC7wBPhrqUtSqk+wOnA3wC01i6t9eHwVtWKDYjx/cawk45/NL5baK0/BspbrL4QeNo3/zRwUbcW1ZzlOd0AAAKUSURBVEJbNWqt39Fae3yLXwDHfinE49TOewjwMHAb0GMOUva0cM8C9gYsFxGB4QmglMoDxgP/DW8lbXoE8z+qEe5C2jEQKAWe8u06ekIpFRvuohpprfcBD2L24oqBI1rrd8JbVbvStNbFYHY+gH5hrqcz84A3w11EIKXUbGCf1npjuGs5Gj0t3FUb6yLuk1QpFQf8C/i51roy3PUEUkqdDxzUWq8Ldy0dsAETgMe11uOBGsK/O8HPt9/6QmAAkAnEKqWuCm9VPZ9S6k7MXZvPhbuWRkopJ3An8Mtw13K0elq4FwE5AcvZRMDX4UBKKTtmsD+ntX453PW04RRgtlKqAHO31llKqb+Ht6RWioAirXXjt56XMMM+UpwN7NZal2qt3cDLwMlhrqk9B5RSGQC+6cEw19MmpdQ1wPnAD3Rkjc8+CfNDfKPvbyYb+FIplR7WqoLQ08J9DTBYKTVAKeXAPIi1Isw1+SmlFOZ+4q1a64fCXU9btNZ3aK2ztdZ5mO/f+1rriOp1aq1LgL1KqaG+VTOALWEsqaVCYKpSyun7N59BBB3wbWEFcI1v/hrgP2GspU1KqVnAYmC21vr/t2+HuAkEYRiG3/8AWDQOS2rRNdwBVQvXaDgAggs0TQgXaHqAuoZAULV7htq/YidNcXWzO3mfZPwn9v8yk535rp3nr8y8ZuY0M2dlZjrgoXyjgzaqci8/XTbAG/0wHTPzVjfVnSWwpt8Nn8ta1Q41UlvgJSIuwAJ4rpznVzlRnIBP4Eo/R9VfMUbEK/ABzCOii4gnYAc8RsQX/W2P3QAz7oEJ8F5m5jCwfKPkC1VJatCodu6SpP+x3CWpQZa7JDXIcpekBlnuktQgy12SGmS5S1KDLHdJatAPkNe9P43JwrQAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "progress[['accuracy', 'f1_space', 'f1_comma', 'f1_period', 'f1_question']].plot();\n",
    "# progress[['accuracy', 'f1_O', 'f1_PERIOD']].plot();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Model evaluation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "bert_punc.load_state_dict(torch.load(path+'model'))\n",
    "bert_punc.eval();"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "batch_size = 1024\n",
    "data_loader_test = create_data_loader(X_test, y_test, False, batch_size)\n",
    "data_loader_test_asr = create_data_loader(X_test_asr, y_test_asr, False, batch_size)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "def predictions(data_loader):\n",
    "    y_pred = []\n",
    "    y_true = []\n",
    "    for inputs, labels in tqdm(data_loader, total=len(data_loader)):\n",
    "        with torch.no_grad():\n",
    "            inputs, labels = inputs.cuda(), labels.cuda()\n",
    "            output = bert_punc(inputs)\n",
    "            y_pred += list(output.argmax(dim=1).cpu().data.numpy().flatten())\n",
    "            y_true += list(labels.cpu().data.numpy().flatten())\n",
    "    return y_pred, y_true"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "def evaluation(y_pred, y_test):\n",
    "    precision, recall, f1, _ = metrics.precision_recall_fscore_support(\n",
    "        y_test, y_pred, average=None, labels=[1, 2, 3])\n",
    "    overall = metrics.precision_recall_fscore_support(\n",
    "        y_test, y_pred, average='macro', labels=[1, 2, 3])\n",
    "    result = pd.DataFrame(\n",
    "        np.array([precision, recall, f1]), \n",
    "        columns=list(punctuation_enc.keys())[1:], \n",
    "        index=['Precision', 'Recall', 'F1']\n",
    "    )\n",
    "    result['OVERALL'] = overall[:3]\n",
    "    return result"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "# def evaluation(y_pred, y_test):\n",
    "#     precision, recall, f1, _ = metrics.precision_recall_fscore_support(\n",
    "#         y_test, y_pred, average=None, labels=[1])\n",
    "#     overall = metrics.precision_recall_fscore_support(\n",
    "#         y_test, y_pred, average='macro', labels=[1])\n",
    "#     result = pd.DataFrame(\n",
    "#         np.array([precision, recall, f1]), \n",
    "#         columns=list(punctuation_enc.keys())[1:], \n",
    "#         index=['Precision', 'Recall', 'F1']\n",
    "#     )\n",
    "#     result['OVERALL'] = overall[:3]\n",
    "#     return result"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Test"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "100%|██████████| 14/14 [00:12<00:00,  1.57it/s]\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>COMMA</th>\n",
       "      <th>PERIOD</th>\n",
       "      <th>QUESTION</th>\n",
       "      <th>OVERALL</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Precision</th>\n",
       "      <td>0.670927</td>\n",
       "      <td>0.819083</td>\n",
       "      <td>0.708333</td>\n",
       "      <td>0.732781</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Recall</th>\n",
       "      <td>0.759036</td>\n",
       "      <td>0.819083</td>\n",
       "      <td>0.739130</td>\n",
       "      <td>0.772417</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>F1</th>\n",
       "      <td>0.712267</td>\n",
       "      <td>0.819083</td>\n",
       "      <td>0.723404</td>\n",
       "      <td>0.751585</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "              COMMA    PERIOD  QUESTION   OVERALL\n",
       "Precision  0.670927  0.819083  0.708333  0.732781\n",
       "Recall     0.759036  0.819083  0.739130  0.772417\n",
       "F1         0.712267  0.819083  0.723404  0.751585"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_pred_test, y_true_test = predictions(data_loader_test)\n",
    "eval_test = evaluation(y_pred_test, y_true_test)\n",
    "eval_test"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>COMMA</th>\n",
       "      <th>PERIOD</th>\n",
       "      <th>QUESTION</th>\n",
       "      <th>OVERALL</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Precision</th>\n",
       "      <td>0.655</td>\n",
       "      <td>0.733</td>\n",
       "      <td>0.707</td>\n",
       "      <td>0.700</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Recall</th>\n",
       "      <td>0.471</td>\n",
       "      <td>0.725</td>\n",
       "      <td>0.630</td>\n",
       "      <td>0.597</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>F1</th>\n",
       "      <td>0.548</td>\n",
       "      <td>0.729</td>\n",
       "      <td>0.667</td>\n",
       "      <td>0.644</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           COMMA  PERIOD  QUESTION  OVERALL\n",
       "Precision  0.655   0.733     0.707    0.700\n",
       "Recall     0.471   0.725     0.630    0.597\n",
       "F1         0.548   0.729     0.667    0.644"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# https://www.isca-speech.org/archive/Interspeech_2016/pdfs/1517.PDF\n",
    "ref_test = pd.DataFrame({\n",
    "    'COMMA':    [0.655, 0.471, 0.548],\n",
    "    'PERIOD':   [0.733, 0.725, 0.729],\n",
    "    'QUESTION': [0.707, 0.630, 0.667],\n",
    "    'OVERALL':  [0.700, 0.597, 0.644]\n",
    "}, index=['Precision', 'Recall', 'F1'])\n",
    "ref_test"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsYAAAErCAYAAADdWkV0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAHfFJREFUeJzt3Xuc1XW97/HXpwHE+wWph4nI1EaDBOVa1M7tdivizmDb6YJ5SstEH8kxs3wItcPL2dreabmPhhmnLDbaJi9nFxkeOV5OdsoLQ2KJiBBOOuA5jui2UBAGP+ePtWAvhzXMGlxr1jDzej4ePFrf7++7vuszY2t4853v+n0jM5EkSZL6urfVuwBJkiSpJzAYS5IkSRiMJUmSJMBgLEmSJAEGY0mSJAkwGEuSJEmAwViSJEkCDMaSVDMR8amIaIqIjRHxfETcHRF/Wbw2MiIWRcQrEfHniHggIj5Q8txhEZER8dt2cx4aEVsiormkr7nYd2i7scuLcwxr1395sX9iDb5sSdpjGYwlqQYi4mLgn4GrgXcAQ4EbgWkR8W7g18DvgUbgncC/AUsiYlK7qfaNiGNK2p8Cninzks8AZ5S8/ihg7zJ1BfBp4CXgrN364iSplwpPvpOk6oqIA4F1wGcz8/Yy1xcAgzLzb9v1fxd4b2YeX1zlfQb4OnBgZl5SHNNEIUSfm5nDin3NwPeBaZk5odh3LfAy8A9AY2Y2F/uPB+4BzgX+G3BYZm6p4pcvSXssV4wlqfomAQMpBNhyTgZ2CszAbcAHI2Kfkr5bgOkR0RARI4D9gUfKPPdh4ICIGBERDcAni89t7yzg58BPiu3TOvtiJKmvMBhLUvUNAl7MzLYOrh8KPF+m/3kKP5cPLulrAVYBJ1EItf+yi9ddAHyGQvB+isKq9Q7FwP1x4MeZuRW4A7dTSNIO/epdgCT1QhuAQyOiXwfh+EXgsDL9hwFvUNgC8faS/n8BzgY+ABwPDO/gdRcAD1LYt1wuQJ8OtAGLi+1bgXsjYnBmtu7qC5KkvsAVY0mqvoeAzcDfdXD9Xgort+19AngoM19r138n8GFgbWb+saMXLV57Bvhb4H+UGXIWsB/wbET8XwrbOfpT8qE9SerLXDGWpCrLzFciYg4wNyLagCXAVgrbIf4auAJYGhFXAd8qXjubwjaIyWXmezUiTqSwktyZc4CDi8/Z8TM+Ig4H/gY4FfhdyfiLKATm67v6dUpSb2MwlqQayMxvR8T/A/6ewpaFPwPLgKsyc3Xxfsb/CDRT+O1dE3BKZv66g/maKnzdP3Rw6dPA8sxcUtoZEdcDX46IYzLziUpeQ5J6K2/XJkmSJOEeY0mSJAkwGEuSJEmAwViSJEkCDMaSJEkSUMe7Uhx66KE5bNiwer28JEmS+ohly5a9mJmDOxtXt2A8bNgwmpoquvuQJEmStNsiosPDkUq5lUKSJEnCYCxJkiQBBmNJkiQJ6GFHQm/dupWWlhY2b95c71J6lYEDBzJkyBD69+9f71IkSZJ6rB4VjFtaWth///0ZNmwYEVHvcnqFzGTDhg20tLTQ2NhY73IkSZJ6rB61lWLz5s0MGjTIUFxFEcGgQYNchZckSepEjwrGgKG4BvyeSpIkda7HBWNJkiSpHnrUHuP2hs36RVXna/7HD3c6pqGhgVGjRtHW1kZjYyMLFizgoIMO2uVzrr/+er773e8yduxYbr311mqVK0mSpG7Uo4NxPey9994sX74cgLPOOou5c+fyta99bZfPufHGG7n77rsr/nBbW1sb/fr5rZe0Gy4/sN4V1Nblr9S7Akl9mFspdmHSpEmsW7duR/uaa65hwoQJjB49mssuuwyA888/n7Vr1zJ16lSuu+46Xn31VT73uc8xYcIExowZw89+9jMAfvSjH/Hxj3+cj3zkI0yePLnD+ZqbmxkxYgTnnnsu733ve5k8eTKbNm0CYM2aNZx00kkce+yxjB07lj/84Q8dziNJkqSuMRh3YNu2bdx3331MnToVgCVLlrB69WoeffRRli9fzrJly3jwwQe56aabeOc738kDDzzAl770Ja666ipOPPFEli5dygMPPMAll1zCq6++CsBDDz3E/Pnzuf/++zucD2D16tVccMEFrFixgoMOOog777wTgDPPPJMLLriAxx9/nN/85jccdthhu5xHkiRJlfP3+e1s2rSJ4447jubmZsaNG8fJJ58MFILxkiVLGDNmDAAbN25k9erVHH/88W96/pIlS1i0aBHXXnstULgF3bPPPgvAySefzCGHHLLL+YYOHUpjYyPHHXccAOPGjaO5uZk///nPrFu3jtNPPx0oHNrRlbokSZK0awbjdrbvMX7llVc47bTTmDt3LhdeeCGZyezZsznvvPN2+fzM5M477+Too49+U/8jjzzCvvvu+6Zx5eZrbm5mr7322tFuaGhg06ZNZGaHr1dJXZIkSdo1t1J04MADD+T666/n2muvZevWrZxyyincfPPNbNy4EYB169bxwgsv7PS8U045hRtuuGFHkH3sscfKzl/pfNsdcMABDBkyhJ/+9KcAvP7667z22mtdnkeSJEnl9egV40pur1ZLY8aM4dhjj2XhwoV8+tOfZuXKlUyaNAmA/fbbj1tuuYW3v/3tb3rO17/+dS666CJGjx5NZjJs2DDuuuuuneaePHly2fkaGho6rGfBggWcd955zJkzh/79+3P77bd3OE/7uiRJkrRr0dGv6Gtt/Pjx2dTU9Ka+lStXMmLEiLrU09v5vZV6CW/XJkldFhHLMnN8Z+PcSiFJkiRhMJYkSZIAg7EkSZIEGIwlSZIkoIfflUKSJKlH8IOvfUJFK8YRMSUiVkXEmoiYVeb6dRGxvPjn6Yj49+qXKkmSJNVOpyvGEdEAzAVOBlqApRGxKDOf3D4mM79UMv6/AGOqUl21/3VWwb+GGhoaGDVqFJlJQ0MD3/nOd/jABz7QpZe5+uqr+epXv7rTnG1tbYwYMYL58+ezzz77dLl8SZIk1U4lK8YTgTWZuTYztwALgWm7GH8G8K/VKK4eth8J/fjjj/ONb3yD2bNnV/zczOSNN97g6quvLjvnE088wYABA7jpppuqXbYkSZLeokqC8eHAcyXtlmLfTiLiSKARuL+D6zMioikimlpbW7taa7f705/+xMEHH7yjfc011zBhwgRGjx7NZZddBkBzczMjRozgC1/4AmPHjuWcc85h06ZNHHfccZx55pk7zfmhD32INWvW0NzczDHHHLOj/9prr+Xyyy8H4IQTTuDSSy9l4sSJHHXUUfzqV78CYNu2bXzlK19h1KhRjB49mhtuuKGGX70kSVLfUsmH76JMX0fH5U0H7sjMbeUuZuY8YB4UTr6rqMJutj3Ubt68meeff5777y9k/CVLlrB69WoeffRRMpOpU6fy4IMPMnToUFatWsUPf/hDbrzxRgBuv/12li9fvtPcbW1t3H333UyZMqXTOtra2nj00UdZvHgxV1xxBffeey/z5s3jmWee4bHHHqNfv3689NJL1f3iJUmS+rBKgnELcERJewiwvoOx04EL3mpR9bR92wPAQw89xGc+8xmeeOIJlixZwpIlSxgzprB9euPGjaxevZqhQ4dy5JFH8v73v7/DObeHbSisGJ9zzjmsX9/Rt7Dgox/9KADjxo2jubkZgHvvvZfzzz+ffv0K/9kOOeSQt/S1SpIk6T9UEoyXAsMjohFYRyH8fqr9oIg4GjgYeKiqFdbRpEmTePHFF2ltbSUzmT17Nuedd96bxjQ3N7Pvvvvucp7SsL1dv379eOONN3a0N2/e/Kbre+21F1D44F5bWxtQ2MMcUW4BX5IkSW9Vp3uMM7MNmAncA6wEbsvMFRFxZURMLRl6BrAwM3vkFond8dRTT7Ft2zYGDRrEKaecws0338zGjRsBWLduHS+88ELZ5/Xv35+tW7fucu53vOMdvPDCC2zYsIHXX3+du+66q9N6Jk+ezE033bQjKLuVQpIkqXoqOuAjMxcDi9v1zWnXvrx6ZRXV4WbTpdseMpP58+fT0NDA5MmTWblyJZMmTQJgv/3245ZbbqGhoWGnOWbMmMHo0aMZO3Yst956a9nX6d+/P3PmzOF973sfjY2NvOc97+m0ts9//vM8/fTTjB49mv79+3Puuecyc+bMt/DVSpIkabuo1wLv+PHjs6mp6U19K1euZMSIEXWpp7fzeyv1Ep6+JdWH7709WkQsy8zxnY2r6OQ7SZIkqberaCuFtJPe/C/nXv6vZkmSVF6PWzHuRZ/d6zH8nkqSJHWuRwXjgQMHsmHDBoNcFWUmGzZsYODAgfUuRZIkqUfrUVsphgwZQktLC3vCcdF7koEDBzJkyJB6lyFJktSj9ahg3L9/fxobG+tdRlUMm/WLepfQzpNVna3ZBWhJktTL9KitFJIkSVK9GIwlSZIkDMaSJEkSYDCWJEmSAIOxJEmSBBiMJUmSJMBgLEmSJAEGY0mSJAkwGEuSJEmAwViSJEkCDMaSJEkSUGEwjogpEbEqItZExKwOxnwiIp6MiBUR8ePqlilJkiTVVr/OBkREAzAXOBloAZZGxKLMfLJkzHBgNvDBzHw5It5eq4IlSZKkWqhkxXgisCYz12bmFmAhMK3dmHOBuZn5MkBmvlDdMiVJkqTaqiQYHw48V9JuKfaVOgo4KiJ+HREPR8SUchNFxIyIaIqIptbW1t2rWJIkSaqBSoJxlOnLdu1+wHDgBOAM4PsRcdBOT8qcl5njM3P84MGDu1qrJEmSVDOVBOMW4IiS9hBgfZkxP8vMrZn5DLCKQlCWJEmS9giVBOOlwPCIaIyIAcB0YFG7MT8F/hogIg6lsLVibTULlSRJkmqp02CcmW3ATOAeYCVwW2auiIgrI2Jqcdg9wIaIeBJ4ALgkMzfUqmhJkiSp2jq9XRtAZi4GFrfrm1PyOIGLi38kSZKkPY4n30mSJEkYjCVJkiTAYCxJkiQBBmNJkiQJMBhLkiRJgMFYkiRJAgzGkiRJEmAwliRJkoAKD/iQJEnalWGzflHvEmqqeWC9K1B3cMVYkiRJwmAsSZIkAQZjSZIkCTAYS5IkSYDBWJIkSQIMxpIkSRJgMJYkSZIAg7EkSZIEGIwlSZIkoMJgHBFTImJVRKyJiFllrp8dEa0Rsbz45/PVL1WSJEmqnU6PhI6IBmAucDLQAiyNiEWZ+WS7oT/JzJk1qFGSJEmquUpWjCcCazJzbWZuARYC02pbliRJktS9KgnGhwPPlbRbin3t/aeI+F1E3BERR5SbKCJmRERTRDS1trbuRrmSJElSbVQSjKNMX7Zr/xwYlpmjgXuB+eUmysx5mTk+M8cPHjy4a5VKkiRJNVRJMG4BSleAhwDrSwdk5obMfL3Y/O/AuOqUJ0mSJHWPSoLxUmB4RDRGxABgOrCodEBEHFbSnAqsrF6JkiRJUu11eleKzGyLiJnAPUADcHNmroiIK4GmzFwEXBgRU4E24CXg7BrWLEmSJFVdp8EYIDMXA4vb9c0peTwbmF3d0iRJkqTu48l3kiRJEgZjSZIkCahwK4Uk7SmGzfpFvUuoqeaB9a5AknovV4wlSZIkDMaSJEkSYDCWJEmSAIOxJEmSBBiMJUmSJMBgLEmSJAEGY0mSJAkwGEuSJEmAwViSJEkCDMaSJEkSYDCWJEmSAIOxJEmSBBiMJUmSJMBgLEmSJAEGY0mSJAkwGEuSJElAhcE4IqZExKqIWBMRs3Yx7mMRkRExvnolSpIkSbXXaTCOiAZgLnAqMBI4IyJGlhm3P3Ah8Ei1i5QkSZJqrZIV44nAmsxcm5lbgIXAtDLj/ivwTWBzFeuTJEmSukUlwfhw4LmSdkuxb4eIGAMckZl37WqiiJgREU0R0dTa2trlYiVJkqRaqSQYR5m+3HEx4m3AdcCXO5soM+dl5vjMHD948ODKq5QkSZJqrJJg3AIcUdIeAqwvae8PHAP874hoBt4PLPIDeJIkSdqTVBKMlwLDI6IxIgYA04FF2y9m5iuZeWhmDsvMYcDDwNTMbKpJxZIkSVINdBqMM7MNmAncA6wEbsvMFRFxZURMrXWBkiRJUnfoV8mgzFwMLG7XN6eDsSe89bIkSZKk7uXJd5IkSRIGY0mSJAkwGEuSJEmAwViSJEkCDMaSJEkSYDCWJEmSAIOxJEmSBBiMJUmSJMBgLEmSJAEGY0mSJAkwGEuSJEmAwViSJEkCDMaSJEkSYDCWJEmSAIOxJEmSBBiMJUmSJMBgLEmSJAEGY0mSJAmoMBhHxJSIWBURayJiVpnr50fE7yNieUT8n4gYWf1SJUmSpNrpNBhHRAMwFzgVGAmcUSb4/jgzR2XmccA3gW9XvVJJkiSphipZMZ4IrMnMtZm5BVgITCsdkJl/KmnuC2T1SpQkSZJqr18FYw4HnitptwDvaz8oIi4ALgYGACeWmygiZgAzAIYOHdrVWiVJkqSaqWTFOMr07bQinJlzM/PdwKXA35ebKDPnZeb4zBw/ePDgrlUqSZIk1VAlwbgFOKKkPQRYv4vxC4G/eytFSZIkSd2tkmC8FBgeEY0RMQCYDiwqHRARw0uaHwZWV69ESZIkqfY63WOcmW0RMRO4B2gAbs7MFRFxJdCUmYuAmRFxErAVeBk4q5ZFS5IkSdVWyYfvyMzFwOJ2fXNKHn+xynVJkiRJ3cqT7yRJkiQMxpIkSRJgMJYkSZIAg7EkSZIEGIwlSZIkwGAsSZIkAQZjSZIkCTAYS5IkSYDBWJIkSQIMxpIkSRJgMJYkSZIAg7EkSZIEGIwlSZIkwGAsSZIkAQZjSZIkCTAYS5IkSYDBWJIkSQIMxpIkSRJQYTCOiCkRsSoi1kTErDLXL46IJyPidxFxX0QcWf1SJUmSpNrpNBhHRAMwFzgVGAmcEREj2w17DBifmaOBO4BvVrtQSZIkqZYqWTGeCKzJzLWZuQVYCEwrHZCZD2Tma8Xmw8CQ6pYpSZIk1VYlwfhw4LmSdkuxryPnAHeXuxARMyKiKSKaWltbK69SkiRJqrFKgnGU6cuyAyP+MzAeuKbc9cycl5njM3P84MGDK69SkiRJqrF+FYxpAY4oaQ8B1rcfFBEnAV8D/iozX69OeZIkSVL3qGTFeCkwPCIaI2IAMB1YVDogIsYA3wOmZuYL1S9TkiRJqq1Og3FmtgEzgXuAlcBtmbkiIq6MiKnFYdcA+wG3R8TyiFjUwXSSJElSj1TJVgoyczGwuF3fnJLHJ1W5LkmSJKlbefKdJEmShMFYkiRJAgzGkiRJEmAwliRJkgCDsSRJkgQYjCVJkiTAYCxJkiQBBmNJkiQJMBhLkiRJgMFYkiRJAgzGkiRJEmAwliRJkgCDsSRJkgQYjCVJkiTAYCxJkiQBBmNJkiQJMBhLkiRJgMFYkiRJAioMxhExJSJWRcSaiJhV5vrxEfHbiGiLiI9Vv0xJkiSptjoNxhHRAMwFTgVGAmdExMh2w54FzgZ+XO0CJUmSpO7Qr4IxE4E1mbkWICIWAtOAJ7cPyMzm4rU3alCjJEmSVHOVbKU4HHiupN1S7OuyiJgREU0R0dTa2ro7U0iSJEk1UUkwjjJ9uTsvlpnzMnN8Zo4fPHjw7kwhSZIk1UQlwbgFOKKkPQRYX5tyJEmSpPqoJBgvBYZHRGNEDACmA4tqW5YkSZLUvToNxpnZBswE7gFWArdl5oqIuDIipgJExISIaAE+DnwvIlbUsmhJkiSp2iq5KwWZuRhY3K5vTsnjpRS2WEiSJEl7JE++kyRJkjAYS5IkSYDBWJIkSQIMxpIkSRJgMJYkSZIAg7EkSZIEGIwlSZIkwGAsSZIkAQZjSZIkCTAYS5IkSYDBWJIkSQIMxpIkSRJgMJYkSZIAg7EkSZIEGIwlSZIkwGAsSZIkAQZjSZIkCTAYS5IkSYDBWJIkSQIqDMYRMSUiVkXEmoiYVeb6XhHxk+L1RyJiWLULlSRJkmqp02AcEQ3AXOBUYCRwRkSMbDfsHODlzPwL4Drgn6pdqCRJklRLlawYTwTWZObazNwCLASmtRszDZhffHwH8DcREdUrU5IkSaqtfhWMORx4rqTdAryvozGZ2RYRrwCDgBdLB0XEDGBGsbkxIlbtTtGqv4BDaffft9e4wn/Tqefq1e898P2nHsv33h7vyEoGVRKMy32ncjfGkJnzgHkVvKZ6uIhoyszx9a5D6mt870n14Xuvb6hkK0ULcERJewiwvqMxEdEPOBB4qRoFSpIkSd2hkmC8FBgeEY0RMQCYDixqN2YRcFbx8ceA+zNzpxVjSZIkqafqdCtFcc/wTOAeoAG4OTNXRMSVQFNmLgJ+ACyIiDUUVoqn17Jo9QhuiZHqw/eeVB++9/qAcGFXkiRJ8uQ7SZIkCTAYS5IkSYDBWJIkSQIMxpIkSRJQ2QEf0g4RcTiF02N2/H8nMx+sX0VS7xURF+/qemZ+u7tqkVQQEe/JzKfqXYdqw2CsikXEPwGfBJ4EthW7EzAYS7Wxf70LkLSTJcDQeheh2vB2bapYRKwCRmfm6/WuRZKkWomI6zu6BJyVmQd0Zz3qPq4YqyvWAv0Bg7HUDXbxlzMAmXlhd9Ui9TGfBb5M+b/vzujmWtSNDMbqiteA5RFxHyU/LPzLWaqZZfUuQOqjlgJPZOZv2l+IiMu7vxx1F7dSqGIRcVa5/syc3921SJJUKxFxCLA5M1+rdy3qXgZjdUlEDACOKjZXZebWetYj9QURMRi4FBgJDNzen5kn1q0oqReLiKGZ+Wy961D38z7GqlhEnACsBuYCNwJPR8TxdS1K6htuBVYCjcAVQDOFX/VKqo2fbn8QEXfWsxB1L/cYqyu+BUzOzFUAEXEU8K/AuLpWJfV+gzLzBxHxxcz8JfDLiPhlvYuSerEoefyuulWhbmcwVlf03x6KATLz6YjoX8+CpD5i+5al5yPiw8B6YEgd65F6u+zgsXo59xirYhFxM4UfEAuKXWcC/TLzs/WrSur9IuI04FfAEcANwAHAFZm5qK6FSb1URGwDXqWwcrw3hbsyUWyn9zHuvQzGqlhE7AVcAPwlhR8ODwI3euCHJEnqDQzGktTDRcR84IuZ+e/F9sHAtzLzc/WtTJJ6F/cYq1MRcVtmfiIifk+ZvVaZOboOZUl9yejtoRggM1+OiDH1LEiSeiODsSrxxeL/nlbXKqS+620RcXBmvgw7Dh/w57ckVZk/WNWpzHy++PBFYFNmvlG8Vdt7gLvrV5nUZ3wL+E1E3EHhtzafAK6qb0mS1Pu4x1gVi4hlwIeAg4GHgSbgtcw8s66FSX1ARIwETqTwwdf7MvPJOpckSb2OJ9+pK6J4bvxHgRsy83QKR9RKqr1DgFcz8wagNSIa612QJPU2BmN1RUTEJAr3L/5Fsc/tOFKNRcRlwKXA7GJXf+CW+lUkSb2TwVhdcRGFv5j/LTNXRMS7gAfqXJPUF5wOTKVw4ACZuR7Yv64VSVIv5GqfKpaZvwR+WdJeC1xYv4qkPmNLZmZEJEBE7FvvgiSpNzIYq1MR8c+ZeVFE/Jzy9zGeWoeypL7ktoj4HnBQRJwLfA74fp1rkqRex7tSqFMRMS4zl0XEX5W7XlxJllRDEXEyMJnCXSnuycz/VeeSJKnXMRirYsVf327KzDeK7QZgr+KdKiR1k+J7b3pm3lrvWiSpN/HDd+qK+4B9Stp7A/fWqRap14uIAyJidkR8JyImR8FMYC2FQz4kSVXkHmN1xcDM3Li9kZkbI2KfXT1B0luyAHgZeAj4PHAJMACYlpnL61mYJPVGBmN1xasRMTYzfwuFvcfApjrXJPVm78rMUQAR8X0Kx7IPzcw/17csSeqdDMbqiouA2yNifbF9GPDJOtYj9XZbtz/IzG0R8YyhWJJqxw/fqUsioj9wNIVPxj+VmVs7eYqk3RQR2yge6kHhPbc38FrxcWbmAfWqTZJ6I4OxKlbcT3wxcGRmnhsRw4GjM/OuOpcmSZL0lnlXCnXFD4EtwKRiuwX4h/qVI0mSVD0GY3XFuzPzmxT3PWbmJgq/0pUkSdrjGYzVFVsiYm+Kx0JHxLuB1+tbkiRJUnV4Vwp1xWXA/wSOiIhbgQ8CZ9e1IkmSpCrxw3eqSEQEMITCJ+LfT2ELxcOZ+WJdC5MkSaoSg7EqFhHLMnNcveuQJEmqBfcYqysejogJ9S5CkiSpFlwxVsUi4kkKh3s0Uzh0YPshA6PrWZckSVI1GIxVsYg4slx/Zv6xu2uRJEmqNu9KoU5FxEDgfOAvgN8DP8jMtvpWJUmSVF2uGKtTEfETCod6/Ao4FfhjZn6xvlVJkiRVl8FYnYqI32fmqOLjfsCjmTm2zmVJkiRVlXelUCW2bn/gFgpJktRbuWKsTkXENgp3oYDCnSj2pnDQx/a7UhxQr9okSZKqxWAsSZIk4VYKSZIkCTAYS5IkSYDBWJIkSQIMxpIkSRIA/x/JcWmLYdXycAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsYAAAErCAYAAADdWkV0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAHtRJREFUeJzt3X2UXXV97/H3x0kgyIM8RZcQQqKiJpVIwoBGW0utBLQ1VFstlFu1IoFVUnxoXZDaBqRXWwVrC4ZSalEu0kbQW01puKQ8KLaiJJRYDTEmjaMM8V7Cg2gggUz43j9mQodhJnMmnDMnzLxfa83K+e3z2/t8JnJmPu78zt6pKiRJkqTx7nntDiBJkiTtCSzGkiRJEhZjSZIkCbAYS5IkSYDFWJIkSQIsxpIkSRJgMZYkSZIAi7EktUySriRbk2xJ8v+SfC7Jfkm+lmRb3/adX//ct88JSZ7s2/bzJOuS/N6A41aSl/Ubz0yyLMkjffvcluR1/Z6f1rfPln5Zbkhy4uj9bUjSns9iLEmt9daq2g+YAxwH/Enf9oVVtV+/r7f222dT3z4HAB8E/i7JKwY7eJKXAv8OfBeYDhwG/BOwIsncAdMP7Dvuq4F/Bf4pyXua8l1K0hgwod0BJGk8qKr7ktwIvGoE+xSwPMlDwCxg3SDTLgTuqKqP9Nt2aZIZwCeANwxy3P8L/HWSicAnkvyvqnqy8e9GksYmzxhL0ihIcgTwFuDuEezzvCTzgUOBDUNMOxG4fpDt1wGvT/L8XbzE/wZeCAx6NlqSxhuLsSS11leS/BT4N+DrwMf7tl+a5Kf9vv6s3z6H9e2zld5lER+qqqEK9aHATwbZ/hN6f8YftItsm/r+PLjB70WSxjSXUkhSa/1GVd3cf0MSgHOr6rND7LOpqqYk2Rv4C+CNwF8NMfcB4MWDbH8x8CTwML1nhQdzeN+fDw0dX5LGD88YS9IeqqoeB84Djk7yG0NMuxl4xyDb30nv2uPHdvESbwPuZ/C1y5I07liMJWkPVlVPAJ8CFg8x5aPA65J8LMnBSfZP8gfAu+gt1c+Q5EVJFgIXAIv84J0k9bIYS1J7fGbAdYzv2sXcq4CpSd468ImqWg/8Ir2XYOuid23xbwInVdW/D5j+0ySP0ntpt7cA76iqq5rwvUjSmJDeqwFJkiRJ45tnjCVJkiQsxpIkSRJgMZYkSZIAi7EkSZIEtPEGH4ceemhNmzatXS8vSZKkceKuu+56oKomDzevbcV42rRprFq1ql0vL0mSpHEiyY8amedSCkmSJAmLsSRJkgRYjCVJkiSgjWuMJUmSxqvt27fT3d3Ntm3b2h1lTJk0aRJTpkxh4sSJu7W/xViSJGmUdXd3s//++zNt2jSStDvOmFBVPPjgg3R3dzN9+vTdOoZLKSRJkkbZtm3bOOSQQyzFTZSEQw455FmdhbcYS5IktYGluPme7d+pxViSJEnCNcaSJEltN+38f2nq8br+4teGndPR0cHRRx9NT08P06dP55prruHAAw/c5T6XXnopf/M3f8OcOXO49tprmxV3j2Ex1u658AXtTtA6Fz7S7gTS0Mbyew98/2nP1ez33knXwaYWXpFi093DTtln0t6sXv45AN696K9YsmQJH/nIR3a5z+WXX86NN97Y8Ifbenp6mDDhuVM3G1pKkeTkJOuSbEhy/iDPT01yW5K7k/xnkrc0P6okSZJaYe7cudx3331PjS+++GKOO+44Zs2axQUXXADA2WefzcaNG5k/fz6f/vSnefTRR3nve9/Lcccdx+zZs/nqV78KwOc//3ne8Y538Na3vpV58+YNebyuri5mzJjBmWeeyS/8wi8wb948tm7dCsCGDRt405vexKtf/WrmzJnDf/3Xfw15nGYathgn6QCWAG8GZgKnJZk5YNqfANdV1WzgVODyZgeVJElS8+3YsYNbbrmF+fPnA7BixQrWr1/PnXfeyerVq7nrrru4/fbbueKKKzjssMO47bbb+OAHP8jHPvYx3vjGN7Jy5Upuu+02PvzhD/Poo48CcMcdd3D11Vdz6623Dnk8gPXr13POOeewZs0aDjzwQL785S8DcPrpp3POOefwne98h29+85u8+MUv3uVxmqWRc9vHAxuqaiNAkqXAKcA9/eYUcEDf4xcAm5oZUpIkSc21ddvjHHPiqXR1b+LYzuM58cQTgd5ivGLFCmbPng3Ali1bWL9+PW94wxuetv+KFStYtmwZl1xyCdB7Cbof//jHAJx44okcfPDBuzze1KlTmT59OscccwwAxx57LF1dXfz85z/nvvvu421vexvQe9OOkeR6NhopxocD9/YbdwOvGTDnQmBFkj8A9gXeNNiBkiwAFgBMnTp1pFklSZLUJPtM2pvV/7qUR372c379zI+wZMkSzj33XKqKRYsWcdZZZ+1y/6riy1/+Mq94xSuetv3b3/42++6779PmDXa8rq4u9t5776fGHR0dbN26laoa8vUayfVsNLLGeLALwg1MfBrw+aqaArwFuCbJM45dVVdWVWdVdU6ePHnkaSVJktRULzhgfy699FIuueQStm/fzkknncRVV13Fli1bALjvvvu4//77n7HfSSedxGWXXfZUkb377sE/8Nfo8XY64IADmDJlCl/5ylcAePzxx3nsscdGfJzd0cgZ427giH7jKTxzqcQZwMkAVXVHkknAoUBz00qSJI1BXece1tbXnz17Nq9+9atZunQpv/u7v8vatWuZO3cuAPvttx9f+MIXeOELX/i0ff70T/+UD3zgA8yaNYuqYtq0adxwww3POPa8efMGPV5HR8eQea655hrOOussFi9ezMSJE7n++uuHPM7AXM9Ghjpd/dSEZALwA+BXgfuAlcDvVNWafnNuBL5YVZ9PMgO4BTi8dnHwzs7OWrVqVRO+BbXFWL5klJeL0p5sLL/3wPef9lxNfu+tPek6ZhzZvEL3rB02u90Jmmbt2rXMmDHjaduS3FVVncPtO+xSiqrqARYCNwFr6b36xJokFyWZ3zftD4Ezk3wH+EfgPbsqxZIkSdKepqErLlfVcmD5gG2L+z2+B3h9c6NJkiRJo6ehG3xIkiRJY53FWJIkScJiLEmSJAEWY0mSJAlo8MN3kiRJaqErT2ju8RZ8bdgpHUd0cvQrX0ZV0TFpPz7zmc/wute9bkQv8/GPf5w//uM//u9jdnRw9NFH09PTw4wZM7j66qt5/vOfP8Lw7eMZY0mSpHFo5y2hv3PzF/nzP/9zFi1a1PC+VcWTTz7Jxz/+8acfc599WL16Nd/73vfYa6+9uOKKK5odu6UsxpIkSePcz372Mw466KCnxhdffDHHHXccs2bN4oILLgCgq6uLGTNm8Pu///vMmTOHM844g61bt3LMMcdw+umnP+OYv/RLv8SGDRvo6uriVa961VPbL7nkEi688EIATjjhBM477zyOP/54Xv7yl/ONb3wDgB07dvBHf/RHHH300cyaNYvLLrushd/9f3MphSRJ0ji0ddvjHHPiqWx7/Al+svkhbr31VgBWrFjB+vXrufPOO6kq5s+fz+23387UqVNZt24dn/vc57j88ssBuP7661m9evUz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\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "for col in ref_test.columns:\n",
    "    pd.DataFrame({'Reference': ref_test[col], 'BertPunc': eval_test[col]}).plot.bar(\n",
    "        title=col, figsize=(12, 4))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Test ASR"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "100%|██████████| 14/14 [00:09<00:00,  1.64it/s]\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>COMMA</th>\n",
       "      <th>PERIOD</th>\n",
       "      <th>QUESTION</th>\n",
       "      <th>OVERALL</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Precision</th>\n",
       "      <td>0.485539</td>\n",
       "      <td>0.771995</td>\n",
       "      <td>0.469388</td>\n",
       "      <td>0.575641</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Recall</th>\n",
       "      <td>0.694236</td>\n",
       "      <td>0.770087</td>\n",
       "      <td>0.657143</td>\n",
       "      <td>0.707155</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>F1</th>\n",
       "      <td>0.571429</td>\n",
       "      <td>0.771040</td>\n",
       "      <td>0.547619</td>\n",
       "      <td>0.630029</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "              COMMA    PERIOD  QUESTION   OVERALL\n",
       "Precision  0.485539  0.771995  0.469388  0.575641\n",
       "Recall     0.694236  0.770087  0.657143  0.707155\n",
       "F1         0.571429  0.771040  0.547619  0.630029"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_pred_test_asr, y_true_test_asr = predictions(data_loader_test_asr)\n",
    "eval_test_asr = evaluation(y_pred_test_asr, y_true_test_asr)\n",
    "eval_test_asr"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>COMMA</th>\n",
       "      <th>PERIOD</th>\n",
       "      <th>QUESTION</th>\n",
       "      <th>OVERALL</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Precision</th>\n",
       "      <td>0.596</td>\n",
       "      <td>0.707</td>\n",
       "      <td>0.607</td>\n",
       "      <td>0.660</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Recall</th>\n",
       "      <td>0.429</td>\n",
       "      <td>0.720</td>\n",
       "      <td>0.486</td>\n",
       "      <td>0.573</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>F1</th>\n",
       "      <td>0.499</td>\n",
       "      <td>0.714</td>\n",
       "      <td>0.540</td>\n",
       "      <td>0.614</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           COMMA  PERIOD  QUESTION  OVERALL\n",
       "Precision  0.596   0.707     0.607    0.660\n",
       "Recall     0.429   0.720     0.486    0.573\n",
       "F1         0.499   0.714     0.540    0.614"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# https://www.isca-speech.org/archive/Interspeech_2016/pdfs/1517.PDF\n",
    "ref_test_asr = pd.DataFrame({\n",
    "    'COMMA':    [0.596, 0.429, 0.499],\n",
    "    'PERIOD':   [0.707, 0.720, 0.714],\n",
    "    'QUESTION': [0.607, 0.486, 0.540],\n",
    "    'OVERALL':  [0.660, 0.573, 0.614]\n",
    "}, index=['Precision', 'Recall', 'F1'])\n",
    "ref_test_asr"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "for col in ref_test_asr.columns:\n",
    "    pd.DataFrame({'Reference': ref_test_asr[col], 'BertPunc': eval_test_asr[col]}).plot.bar(\n",
    "        title=col, figsize=(12, 4))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
